/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package es.esi.gemde.vv.mast.mastmodel.validation;

import es.esi.gemde.vv.mast.mastmodel.Composite_Operation;
import es.esi.gemde.vv.mast.mastmodel.Enclosing_Operation;
import es.esi.gemde.vv.mast.mastmodel.Immediate_Ceiling_Resource;
import es.esi.gemde.vv.mast.mastmodel.Message_Transmission;
import es.esi.gemde.vv.mast.mastmodel.Packet_Based_Network;
import es.esi.gemde.vv.mast.mastmodel.Primary_Scheduler;
import es.esi.gemde.vv.mast.mastmodel.Priority_Inheritance_Protocol;
import es.esi.gemde.vv.mast.mastmodel.Priority_Inheritance_Resource;
import es.esi.gemde.vv.mast.mastmodel.Regular_Processor;
import es.esi.gemde.vv.mast.mastmodel.Regular_Scheduling_Server;
import es.esi.gemde.vv.mast.mastmodel.Regular_Transaction;
import es.esi.gemde.vv.mast.mastmodel.SRP_Resource;
import es.esi.gemde.vv.mast.mastmodel.Secondary_Scheduler;
import es.esi.gemde.vv.mast.mastmodel.Simple_Operation;

import org.eclipse.emf.common.util.EList;

import org.eclipse.emf.ecore.util.FeatureMap;

/**
 * A sample validator interface for {@link es.esi.gemde.vv.mast.mastmodel.MAST_MODEL}.
 * This doesn't really do anything, and it's not a real EMF artifact.
 * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
 * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
 */
public interface MAST_MODELValidator {
	boolean validate();

	boolean validateGroup(FeatureMap value);
	boolean validateRegular_Processor(EList<Regular_Processor> value);
	boolean validatePacket_Based_Network(EList<Packet_Based_Network> value);
	boolean validateRegular_Scheduling_Server(EList<Regular_Scheduling_Server> value);
	boolean validateImmediate_Ceiling_Resource(EList<Immediate_Ceiling_Resource> value);
	boolean validatePriority_Inheritance_Resource(EList<Priority_Inheritance_Resource> value);
	boolean validateSRP_Resource(EList<SRP_Resource> value);
	boolean validateSimple_Operation(EList<Simple_Operation> value);
	boolean validateMessage_Transmission(EList<Message_Transmission> value);
	boolean validateComposite_Operation(EList<Composite_Operation> value);
	boolean validateEnclosing_Operation(EList<Enclosing_Operation> value);
	boolean validateRegular_Transaction(EList<Regular_Transaction> value);
	boolean validatePrimary_Scheduler(EList<Primary_Scheduler> value);
	boolean validateSecondary_Scheduler(EList<Secondary_Scheduler> value);
	boolean validateModel_Date(String value);
	boolean validateModel_Name(String value);
	boolean validateSystem_PiP_Behaviour(Priority_Inheritance_Protocol value);
}
